#include "primitive.h"

primitive::primitive()
{
	ObjectID = nextObjectID;
	nextObjectID++;
}
primitive::primitive(const char* _name): name(_name)
{
	ObjectID = nextObjectID;
	nextObjectID++;
}
primitive::~primitive()
{

}
void primitive::setName(const char* _name)
{
	name = _name;
}
std::string primitive::getName()
{
	return name;
}
material* primitive::getMaterial()
{
	return surfaceMaterial;
}
void primitive::setMaterial(material* other)
{
	surfaceMaterial = other;
}
int primitive::intersect( ray& Ray, intersection& inter)
{
	return 0;
}
bool primitive::isInShade( ray& Ray)
{
	return false;
}
vector3 primitive::getNormal(point inPoint)
{
	return vector3();
}
void primitive::getTextureCoords(intersection& inter)
{

}
double primitive::maxX()
{
	return 0.0;
}
double primitive::minX()
{
	return 0.0;
}
double primitive::maxY()
{
	return 0.0;
}
double primitive::minY()
{
	return 0.0;
}
double primitive::maxZ()
{
	return 0.0;
}
double primitive::minZ()
{
	return 0.0;
}
int primitive::nextObjectID = 0;